<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>

<body>
  <style>
    * {
      padding: 0;
      margin: 0;
    }

    .scroll-box {
      width: 100%;
      height: 500px;
      background: blue;
      overflow: auto;
    }

    .scroll-item {
      height: 1000px;
      width: 100%;
    }
  </style>

  <!-- <div class="scroll-box">
        <div class="scroll-item"></div>
    </div>
 -->

  <div class="search">
    <input type="text">
    <span>查询</span>
  </div>
</body>
<script>
  // let debounce = function (fn, wait) {
  //     let timeout = null;
  //     return function () {
  //         if (timeout !== null) clearTimeout(timeout);//如果多次触发将上次记录延迟清除掉
  //         timeout = setTimeout(() => {
  //             fn.apply(this, arguments);
  //             // 或者直接 fn()
  //             timeout = null;
  //         }, wait);
  //     };
  // }
  // // 处理函数
  // function handle() {
  //     console.log(arguments)
  //     console.log(Math.random());
  // }
  // // 测试用例
  // document.getElementsByClassName('scroll-box')[0].addEventListener("scroll", debounce(handle, 3000));


  //自我介绍，离职原因（公司业务调整，没有相关需求），职业规划（短期走技术方向，长期走技术管理层）
  //入行薪资，扣除薪资，涨幅薪资，公积金按全额、最低标准缴纳

  //项目情况，面试题可以在问一下，晋升机制，公积金按最低标准缴纳，
  /* 
  降低调用函数的频率
  
  
  */
  function debounce(fn, delay) {
    let timer
    return function (...args) {
      if (timer) {
        clearTimeout(timer)
      }
      timer = setTimeout(() => {
        fn.apply(this, args)
      }, delay)
    }
  }

  // 测试
  const task = () => {
    console.log('run task')
  }
  const debounceTask = debounce(task, 1000)
  window.addEventListener('scroll', debounceTask)


</script>

</html>